9 research outputs found

    Python Programmers Have GPUs Too: Automatic Python Loop Parallelization with Staged Dependence Analysis

    Get PDF
    Python is a popular language for end-user software development in many application domains. End-users want to harness parallel compute resources effectively, by exploiting commodity manycore technology including GPUs. However, existing approaches to parallelism in Python are esoteric, and generally seem too complex for the typical end-user developer. We argue that implicit, or automatic, parallelization is the best way to deliver the benefits of manycore to end-users, since it avoids domain-specific languages, specialist libraries, complex annotations or restrictive language subsets. Auto-parallelization fits the Python philosophy, provides effective performance, and is convenient for non-expert developers. Despite being a dynamic language, we show that Python is a suitable target for auto-parallelization. In an empirical study of 3000+ open-source Python notebooks, we demonstrate that typical loop behaviour ‘in the wild’ is amenable to auto-parallelization. We show that staging the dependence analysis is an effective way to maximize performance. We apply classical dependence analysis techniques, then leverage the Python runtime’s rich introspection capabilities to resolve additional loop bounds and variable types in a just-in-time manner. The parallel loop nest code is then converted to CUDA kernels for GPU execution. We achieve orders of magnitude speedup over baseline interpreted execution and some speedup (up to 50x, although not consistently) over CPU JIT-compiled execution, across 12 loop-intensive standard benchmarks

    isovar: Version 0.1.0

    No full text
    Abundance quantification of distinct transcript sequences containing somatic variants from cancer RNAse

    Heterogeneity of mutated tumor antigens in a single high grade ovarian serous carcinoma

    No full text
    <div>Abstract: Patient PT189 presented with stage IIIC high grade papillary serous ovarian cancer in 2012. She was originally treated with carboplatin/paclitaxel. Having failed this original doublet chemotherapy, she has received a total of five additional chemotherapy regimens, all with recurrence of her disease. We performed exome and RNA sequencing on normal PBMC as well as nine tumor samples collected over a two year period during the course of her treatment.</div><p>Choice of variant calling algorithm yields significantly different results in each sample. Low overlap between epitope predictions for primary vs. recurrent sample sets using “confident” variants. Greater concordance between samples from the primary time point compared with later recurrences.<br><br>Presented at: 13th Cancer Immunotherapy (CIMT) annual meeting 2015<br><br>Authors: Alex Rubinsteyn, John Martignetti , Elena Pereira, Tim O'Donnell , Arun Ahuja , Leo Garnar-Wortzel , Robert Sebra , Peter Dottino , Jeff Hammerbacher , Eric Schadt</p><br><br

    hammerlab/mhctools: Version 1.5.0

    No full text
    Python interface to running command-line and web-based MHC binding predictor

    Computational Pipeline for the PGV-001 Neoantigen Vaccine Trial

    No full text
    This paper describes the sequencing protocol and computational pipeline for the PGV-001 personalized vaccine trial. PGV-001 is a therapeutic peptide vaccine targeting neoantigens identified from patient tumor samples. Peptides are selected by a computational pipeline that identifies mutations from tumor/normal exome sequencing and ranks mutant sequences by a combination of predicted Class I MHC affinity and abundance estimated from tumor RNA. The personalized genomic vaccine (PGV) pipeline is modular and consists of independently usable tools and software libraries. We hope that the functionality of these tools may extend beyond the specifics of the PGV-001 trial and enable other research groups in their own neoantigen investigations
    corecore